FBHFTñá'        Introduction
+MS-DOS/VGA boat design program, written by k            Bruce Winterbon
            R.R. 1, Deep River
            Ontario, Canada
            K0J 1P0
{
This program was written to aid in the design of stripper canoes, but it should be more generally useful. It allows one to create and fair boat lines drawings within the computer, to check stability, displacement, and other parameters, and to print patterns for the transverse stations and the stem- and stern-pieces on one's printer. The main part (the graphics box) of any of the graphics screens can also be printed. The printing should be able to be done on almost any printer capable of printing graphics, but I have been able to test the printing only on an Epson-(semi)compatible 9-pin dot-matrix printer and a HP DeskJet 500. Ä
The program needs a mouse to run. Also it needs at least 512K of memory, and would be better with 640K or with extended memory, and it requires at least EGA or VGA graphics. It runs from DOS; it doesn't need Windows. (Windows slows programs down.) It could probably be run from a floppy disk, but it would be painfully slow -- it should be installed on a hard disk. The "standard" version of the program will run on an 8086 or higher CPU, with no numeric coprocessor ('87 chip). If you have an 80286 or higher CPU, I can provide either "real mode" or "protected mode" versions that take advantage of it. Real mode uses only the standard 640K of memory, and protected mode uses extended memory. The real-mode version uses overlays (pieces of code are moved into memory only when they are being used), so it will work better than the protected-mode version if you have little or no extended memory. Also, if you have a numeric coprocessor I can provide a version that uses it, and will therefore run faster than the no-coprocessor version. If you have a 486: the 486SX does not include a coprocessor but the 486DX and 486DX2 processors do have built-in coprocessors. ï
In text mode, the screen is 80 characters by 25 lines; in graphics, 640 by 480 pixels. If you NEED something different, I'll try to help. α
Besides the program BOAT.EXE, the files BOAT.HLP, BOAT.TVR, EGAVGA.BGI, and SIMP.CHR are necessary to run the program. The real mode program also needs the file BOAT.OVR, and the protected-mode version the files DPMI16BI.OVL and RTM.EXE. The program creates data files with the default name BOAT.DTA. All of these files should be in the same directory. If you change the name of the program, then all of the files on the disk with names BOAT.* should be changed correspondingly. "
The program can be run by typing  BOAT
or  BOAT datafile
where "datafile" is the name of a data file, or the path to one. If the extension of the data file is .DTA, it needn't be specified. What you have typed is called the "command line", and the portion of the command line is called the parameter or parameter list. \
In the first case (no command line parameter), when the program starts it looks in the directory the program is in for a file with the extension .DTA and the same name as the program: if the program file is BOAT.EXE, it will look for a file BOAT.DTA to be read as a data file. If "datafile" is given it looks for that file to read as a data file. ª
If it doesn't find the file it gives a warning message. When one is installing the program, this file will not exist, and the message warning one of that is proper. j

There is no printed manual. The help text is intended to take the place of such a manual. Use the help text. While you may be able to figure out what each function is supposed to do, there may be some features that you might not find by accident. There is some redundancy in the help text (the same information in diferent places) but probably not yet enough. ╔
Some of the features (File, Change Directory, and Text Colours dialogs) are inherited  from the Borland Pascal environment. The help text for those features is also inherited, with some modifictions. ╓
I have tried to make as much as possible editable. One can alter display colours, printer control codes, station spacing, units of measurement, and so on. All of these things, as well as fitting parameters, are saved automatically as part of the data file. Also I have tried to impose as few restrictions as possible. The number of stations must not be greater than 30, because of some of the displays, but most other limits will be set by the memory of your computer. q

In the present version of the program, the hull is defined by points on the  stations. Other curves, waterlines for example, are derived from these. I haven't allowed for transoms yet. My designs are keelless, but one should be able to draw a keel here. Because the boat is defined by stations, the leading and trailing edges of the keel may not be well represented. *
One can work in English or metric units. K
The station patterns are drawn full size on the printer paper. Stations are usually more than 8 inches (20 cm) deep, so the patterns will require piecing. A line is drawn across the page where piecing is necessary. If the paper is not continuous-feed, marks are drawn at the corners of each sheet to help put the sheets together. &

The program is controlled through the menu bar at the top of the screen. The ≡ menu is opened by pressing "Alt"+"Space" (together). All of the other menus are opened by pressing "Alt"+"Z", where "Z" is the highlighted letter of the menu. For example, the "File" menu is pulled down by "Alt"+"F". Also "F10" activates the menus, and one can shift among them with the left-arrow and right-arrow keys, or open them with the up and down arrows. The menus may also be opened by clicking on them with the mouse. They may be closed by pressing "Esc". See 8  ≡****File****Change
  ChangeG****Inspect****Reference
▀
When a menu is selected, the "focussed" item in the menu will be indicated by a different colour. Focus may be changed with the up and down arrow keys. Left and right arrow keys switch between menus. To select a menu item ä   i) highlight it with the arrow keys, then press "Enter";
  ii) type the highlighted letter; or
 iii) click on it with the mouse.
\A few of the menu items (e.g., read or save a file) can be selected with the function keys. `
When a menu has been selected, typing a letter selects a menu item, "Alt"+letter another menu. 

The status line at the bottom of the screen shows some menu functions available directly from the keyboard, and also shows help prompts. The menu functions may be invoked by pressing the indicated keys or by mouse clicks on the appropriate part of the status line. T
Most of the text and graphics screens display a "hull identifier" on the top line. f
Most of the menu functions create standard text screens or standard graphics screens. Some use both. d
Highlighted terms (as above) in the help text refer to other help topics. They may be selected by double-clicking on them with the mouse. If the background of the highlighted term is also highlighted, that item is "focussed". Focus may be changed by single mouse clicks, or by pressing "Tab" and "Shift"+"Tab". A focussed item may be selected by "Enter". ╤
The help screen may be moved by clicking on its top line and dragging it. It may be enlarged to full screen or returned to its previous size by clicking on the little box ("icon") in the top right corner. Its size may also be changed by clicking on and dragging its lower right corner. One may move about within the text with the scroll bars in the usual way. The help screen can be closed by clicking on the icon in the its top left corner, or by pressing "Esc". 	ΘyΩ~■åÅÜÑ	
ΦXq' Dialog Boxes
┘
One interacts with the program through the main menu, text screens, and graphics screens. The text screens are called dialog boxes. "Enter", "Esc", and clicking on the icon in the top left corner exit from the text screens. "Esc" and the mouse click on the icon cause the work done in them to be discarded. If the "Cancel" box is focussed, "Enter" causes cancellation. If a text input line is focussed, then "Enter" merely shifts focus instead of exiting from the screen. {
When in a dialog box, one can't invoke the main menu, even though it is still visible. One can get help by pressing "F1". Æ
A text dialog box may contain "radio buttons", precisely one of which can be selected. These are indicated by parentheses, ( ), and the button with the dot in it, (∙), is the selected one. It may also have "check boxes" (indicated by brackets,[ ]), any number (including 0) of which may be selected ([x]). One can move from one item to another with the mouse or with the "Tab" and "Shift"+"Tab" keys. 
(Return to Introduction b  File│Print patterns**File│Print tables of lines
  Change**Change│Units**Change│Lines
  Change│Beam**Change│Length**Change│Depth
  Change│Stems**Change│Space Points
  Change│Parameters**Change│Identifier
  Inspect│Displacements
  Reference│Scale beam**Reference│Scale length
  Reference│Scale depth**Reference│See identifier
  Reference│Displacements?)
⌡≈%■B JXgt
âÆá╢╔▌ ⌡!"$#;$V' ≡│About ▄
  ▀▀▀▀▀▀▀▀
This screen gives copyright information, date of compilation, and (graphics and processor) target of this copy of the program. B
The program was developed on a 386DX with a coprocessor and VGA. e
The initial ancestor of this program was written in GW-Basic on a 4.77 Mh original-PC clone. It was moved to an Atari Mega ST4 and rewritten in GFA Basic, growing beyond all recognition. Then it was moved to a 40 Mh 386DX machine with VGA, 16 MB of memory, and a numeric coprocessor, and rewritten in Borland Pascal 7.0, again growing new features in the process, although it is still (barely) recognizable as a descendant of the Atari version. It was written for DOS rather than Windows both to make it more widely available, and to avoid the performance overhead costs of Windows. (Windows slows things down.) 
(Return to Introduction?) I'" File  (Alt-F) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀
╬The File menu includes choices for saving and reading data files, changing directories, printing station patterns and tables of station coordinates, changing the screen appearance, and exiting the program: « Save**SaveAs**Read**New**Change Dir
 Set up printer**Print Patterns
 Print Tables**Write DXF file
 Write HPGL file**Text Colours
 Graphics Colours**Check aspect ratio**Exit
│
There are prompts to save a data file before exiting from the program and before reading another data file. Also there are prompts when saving if a file of the same name exists. 
(Return to Introduction?)  ≥ °δ  
≡⌡'≈7∙E·U√fⁿt²å Ü^'$ File│Save (F2) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
âThe Save command allows one to save one's hull design to a disk file. The "environment", i.e., the fitting parameters, screen colours, etc., is automatically saved as part of the design. The design will be saved under its present name. The duplicate-file-name warning box will appear to remind one that the file already exists, and the previous version can be saved with a similar name. h
If you wish to save the current hull design under a new name, select the File│Save As command instead. ▓
Save your work often. I've tried to make the program robust, but there's bound to be something you can do to make it crash. Or the electricity or even your computer might fail. 
(Return to File?) % ≥Ω╬'4 File│Save As (Shift+F2)▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
OThe Save As command allows one to save one's hull design with a new file name. It displays a File dialog box, within which you can select the name of an existing file, or enter a new file name. If you select the name of an existing file, the duplicate-file-name warning box will appear to allow you to change the name of the old file. 
(Return to File**File│Save?) ∞Æ%'ΩÉ û	'& File│Read  (F3) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
CThe Read command displays a File dialog box. In this dialog box you select the data file you want to read. When the program is started it looks for a data file BOAT.DTA in the same directory as the program file, BOAT.EXE. If the program name has been changed it will look for a .DTA file with the same name as the program. 
(Return to File?) ∞CΩv' File Dialog Box
╚The File dialog box contains an input box, a file list, a file information panel, the standard cancel button, one other action button (Open), plus a history list that's attached to the Name inputbox. æ
If one is to write to the selected file, and the file name chosen is that of an existing file, the duplicate-file-name warning box will appear. $
(Return to File│Save As**File│Read !           File│Set up printer?)
ε?	∩Öφ╦
%> wδà	≡Ü' File Name Input Box
±The Name input box is where you enter the name of the file to load, or the file-name mask to use as a filter for the Files list box (for example, *.*). The history list is opened by clicking on the down arrow or pressing the down-arrow key. $
(Return to File│Save As**File│Read            File dialog box?)
 δ!	∞6' Files List Box
¼The Files list box lists the names of files in the current directory that match the file-name mask in the Name input box, plus the parent directory and all subdirectories. 
 File Information Panel
▒The File information panel (at the bottom) shows the path name, file name, date, time, and size of the selected file. None of the items on this information panel is selectable. $
(Return to File│Save As**File│Read            File dialog box?)
 ôδí	∞╢' File Open Button
PThe Open button directs the program to read from or write to the selected file. $
(Return to File│Save As**File│Read            File dialog box?)
 oδ}	∞Æ' File│New ▄
  ▀▀▀▀▀▀▀▀▀
The New command allows you to start a new hull design, either a very simple ("elementary") hull with stem- and sternpieces, abutting stations, and a single centre station, (five stations in all), or one defined by your entering tables of station coordinates. The existing hull is discarded (with a warning if it has been altered since it was last saved). The environmental variables, the file name, and the reference file are unchanged. "New" is the same as the menu command Change│Lines, and a fuller description is found there. 
(Return to File?) ░	⌠Ω7'0 File│Change Directory▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
File│Change Directory brings up the Change Directory dialog box, in which you can change the directory in which to look for data files. This dialog box consists of an input box, a list box, the standard OK and Help buttons, and two other buttons (Chdir and Revert). R
The Directory Name input box is where you type in the path of the new directory. p
The Directory Tree list box enables you to navigate directories by using the selecting bar and pressing Enter. W
If you're using the keyboard, press "Enter" to make the selected directory be the current directory, then choose OK (Alt+K) to exit the dialog box. If the selection bar is on  one of a list of subdirectories, pressing "Enter" closes the rest of the list. If it is on a directory with subdirectories, "Enter" opens the list of subdirectories. c
The Chdir button changes the current directory once you've selected or typed in a directory name. ~
The Revert button is the same as "Cancel": you return to the directory in use when the Change Directory function was called. 
(Return to File?) ΩA'	 File│Set up printer▄
¥▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ On the left one selects both the type of printer and, depending on the type, the resolution or paper size one wants. The R, H, or P on the left indicates whether the printer is operating as a raster device, uses HPGL graphics commands, or uses PostScript graphics commands. For example, an HP LaserJet can be used in either raster mode (third choice) or HPGL mode (the next-to-last choice). :
Most printers can be made to emulate (i.e., to act like) at least one of the printers in this list. Many 24-pin printers can emulate 9-pin printers. Not all printers offer a choice of resolutions: check your printer manual. Although some colour printers can be used, the drawings will be in black and white only. ╜
It takes longer to print at higher resolutions, so for patterns it is usually better to use the lowest resolution available, but for other graphics printing a higher resolution is better. m
The printer port may be selected (LPT1, also called PRN, is the usual port) or the output may be directed to a file for later printing. If writing to a file is chosen, the file name may be entered from a File dialog box. NUL is a "null" printer: the program does all its work but doesn't actually send anything to a printer. This is useful to preview your output. b
The plot orientation is either "portrait", the usual way, or "landscape", sideways on the paper. â
If printing a graphics screen rather than a pattern, one can send a form feed command (skip to top of next page) before printing. =




A second dialog box selects certain printer parameters. 4
Return to File│Print patterns**Print graphics box? ∞x±&⌡E	Z' Select printer parameters
9Particularly with the so-called Epson-compatible 9-pin printers, compatibility is not perfect, and different printers have different resolution, page size, etc. These parameters may be changed here. Try the parameters that are given, and if things aren't quite right then use your printer manual, and experiment. ¼
Some raster-type printers may require a "set-up string" of characters before acting properly. The appropriate string can be entered here. I have put the mode-switching commands for HP raster printers in this set-up string instead of hiding it in the program. You shouldn't need to change it. Any control characters in the string, those with ASCII codes less than 32 or greater than 128, are represented as "#n ", where n is the ASCII code. (Note the space after the number.) For example, "ESC" is "#27 ", and "ESC X" (with no spaces) appears as "#27 X", with a space after the number; this space is interpreted as part of the control character. To insert the character "#" use "##". 5
The code selecting the graphics mode of the Epson-compatible printers may be changed here. I have conflicting information on printer commands and resolutions for these printers. Manufacturers appear to differ on what the standard is. You may have some fiddling to do to get things working right. Each resolution for the dot-matrix printers corresponds to a different graphics command, ESC x n1 n2, where n1 and n2 specify the number of points to be plotted, and x represents the varying part of the command. The graphics data are sent to the printer in a different way for 9-pin and 24-pin modes, and the highest resolution for each is in yet another order: that's four different ways of arranging the data. If you use a graphics code that corresponds to a different ordering of graphics data, the plot will be garbage. }
9-pin printers typically have codes like ESC K n1 n2, and 24-pin printers usually recognize these codes and also have codes like ESC * m n1 n2, where m is an integer. m=0 corresponds to K. The number m is sent as a character, not as ASCII code, so that m=0 would have to be sent as #0 rather than 0, and m=33 would be sent as #33 or as an exclamation point, !, which has code 33. 7
Use the "Test" button (see below) to sort things out. .
Epson 9-pin printers go much faster in text mode than in graphics mode, so the program scans each line of graphics and replaces graphics blanks by text blanks whereever possible. If it isn't working on your printer, perhaps the width of a character in pixels is nonstandard. That may be changed here. ï
Some printers have different print-quality modes. The mode may be selected here for DeskJet printers, or in the set-up string for others. 3
When printing with HP raster printers, the amount of data to be sent to the printer can be a bottleneck. These printers support various schemes of compressing graphics data, and one of them, run-length encoding, is used here. If it works all right, use it; if it seems to be causing problems, turn it off. ╔
Also if the printer is connected to a serial port the connection may be non-standard; quantities describing this connection may be changed here. Don't make changes unless you know what you are doing. ╖
If you do make changes, and they don't work, you can return to the standard values by choosing the "Default" button. This changes the values, but does not exit from this dialog box. ä
The "Test" button prints (on the printer) a box of the size specified by the "resolution" and "print area" boxes. It returns you to this dialog box after printing. Print the box, compare its size with what was specified, and adjust accordingly. To start with, you'll probably want to find out how many points you print across the page. Set the vertical resolution to a small number of dots, 10, say, and select "Test". If the box extends off the screen, reduce the horizontal resolution and try again. Once you have a line that's too long and one that's too short you can measure the two to determine how many points are printed on one line. Now enlarge the vertical resolution. If you are using separate sheets of paper you'll need to go through the same procedure. If you can print on continuous-feed paper you can just measure the box once and calculate how long it should be to fit on one page. î
Once the resolution is correct, measure the box and correct the size in inches or mm, or your patterns will not be printed the right size. á
The corrected settings will be saved with your data file, but it would be a good idea to write them down somewhere in case something happens to the data file. 
Return to printer selection? ≡'  Layout of printed graphics box
▐Text can be printed above and below the graphics box, and some of the types of lines (dashed, dotted,..) in the box can be printed or not, as one chooses. The size of the printed box is specified here, and the print size. ì
The default text above the box is the hull information string on one line, and the date and time of printing (right-justified) on the next. The default below the box is the name of the view (the second line on the graphics screen), centred. I didn't see any easy and useful way of saving this text from one view to the next, so this text appears in this form each time one prints a graphics box. }
The printed text can be formatted with embedded "#" control characters. #13 starts a new line, #3 centres text horizontally on the line, and #4 right-justifies it. Each of the latter applies only to the line on which it occurs. Thus "#3Text1#13Text2#13#4Text3" would print "Text1" centred on one line, "Text2" left-justified on the next, and "Text3" right-justified on the third. :
Text size can be specified, height and width separately. 1
Finally one is ready to print the graphics box. 2
Return to printer selection**printer parameters? ⌠\≡±Æ' Labels on patterns
jThe program writes a four-line label on each pattern as it prints it, so that the patterns can be identified later. The first and fourth lines can be changed. The first is the file name, the second the station number, the third the value of y at the keel line for that station, i.e., the height of the point of the station above y=0, and the fourth is the date. ╪
The size of the label can be changed, and one can choose to have the program pause after each stage of the printing process. This is handy if one is printing to the NUL device to see what the output will look like. 1
Finally one is ready to print the graphics box.  
Return to File│Print patterns? ⌠p⌡ô' Graphics printing
WWhen the graphics box is being printed, the printing can be stopped by pressing "ESC". ╕
Graphics can take many different forms in the PC world. To handle all of these varieties, and the different one that will appear next week, Borland (this program was written in Borland Pascal) has chosen to have graphics functions in the language write through the so-called Borland Graphics Interface, or BGI, to the graphics device. The file EGAVGA.BGI is the Borland-supplied "device driver" that allows drawing graphics on the screen. G
Borland leaves other drivers for other software companies to supply. The printer drivers I have used here to print the graphics box were written by Quinn-Curtis (and modified by me: my printer is not quite compatible with the Epson 9-pin "standard", and also I wanted to see on the screen what was being sent to the printer.) 
Return to print layout? ≥u'	 File│Print patterns▄
j▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ One reason for writing this program was to have it construct patterns on a printer. Ä
Use File│Set up printer first, to choose printer and resolution. Low resolution is usually adequate for printing patterns, and it is faster. 
One will build the boat's skin over the patterns, so they will of course be smaller than the finished hull size. Hence one must subtract the skin thickness before printing. This is done with the skin dialog box, which appears when one starts this function. »
Next one selects the stations to be printed, then selects text labels to appear on each printed pattern. When the printer is printing graphics, the screen displays progress. R
Most printers print only an approximately 8-inch-wide strip, so full-sized patterns will almost always have to be pieced. A line is drawn across the paper where it must be pieced so that it is easy to assemble the pieces. If the printer uses separate sheets of paper instead of a continuous roll, the corners of the printing area will be marked to aid reassembly. Index marks are drawn at the left and right edges of the paper to aid further in alignment. Other index marks are put on the curves at the sheerline. When the program is printing graphics, it displays a box showing the progress. 8
Printing can be stopped at any time by pressing "Esc". â
Stations are printed as straight-line segments so use the spline or power fit in Change│GStations to smooth them before printing. 
(Return to File ?) ≡å&╙≤D÷ª÷°
£Ω┘'% Screen display of graphics printing
To print graphics, the program first writes the graphics commands to a file called a graphics metafile, then reads back the metafile. If the printer is a raster device (a dot-matrix or an inkjet printer, for example), the program uses the metafile to construct an image in memory (a bitmap) of the page to be printed, then sends that bitmap to the printer. If instead the printer can act on HPGL or Postscript graphics commands, when the program reads the metafile it sends the appropriate commands directly to the printer. ▐
While all this is going on, the program is displaying progress. The graphics screen shows an image of the page to be printed, squashed or stretched to fit the screen. Lines are drawn on the screen as the appropriate commands are read to and from the metafile, and the bitmap image is written to the screen as it is sent to the printer. Because the number of dots on the screen and on the printed page are different, the screen image will not be as clear as the printer output. 4
Return to File│Print patterns**Print graphics box? ⌡	0'< File│Print tables of lines ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
┴This function prints station coordinates as x-y pairs. The stations are chosen with the station selector dialog box, and then the printer is selected with the (text mode) printer selector box. 
The tables can be for the finished hull or for patterns. The patterns will of course be smaller than the finished hull size, so one must subtract the skin thickness before printing. This is done with the skin dialog box, which appears when one starts this function. ╖
Printing can be stopped at any time by pressing any key. Then pressing "Esc" will cause an exit from the printing procedure, or pressing any other key will allow printing to resume. Ñ
The points that will be printed are those that appear on the ChangeG│Stations screen. To have the points uniformly spaced, use Change│Space points before printing. ¡
If one is working in metric units, the units will be the transverse ones. If working in English units, one can choose between the transverse units and feet-inches-eighths. 
(Return to File?) ò°Φ&╦
■@Ω'  Select printer for text output
╩This dialog box selects the port to which the printer is connected. Usually it's LPT1. Or the output may be directed to a file for later printing. If writing to a file is chosen, the file name may be entered. Specifying NUL causes the program to do all the work of printing without actually sending anything to a printer, so you can see what the output will look like. If one chooses to print to a serial port, communications parameters may be altered here. )
(Return to File│Print tables of lines?) ≈≈'. File│Write DXF file ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
⌐The DXF and HPGL file formats have become standards for exchanging information among CAD programs. This function saves stations, up to the sheerline, in the DXF format. 
(Return to File?) ΩΣ'0 File│Write HPGL file ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
¬The DXF and HPGL file formats have become standards for exchanging information among CAD programs. This function saves stations, up to the sheerline, in the HPGL format. 
(Return to File?) Ωτ'* File│Text colours ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
ÜThis function calls the Colours dialog box, which allows you to change the colours of the text screens: the main menu, the desktop, and the dialog boxes. Ä
The Colours dialog box consists of two list boxes, a text display area, the standard OK, Cancel, and Help buttons, and one of the following: ¼
 ■ On colour and black-and-white systems, it
   also contains two color palettes.
 ■ On monochrome systems, it contains a set
   of radio buttons instead of the palettes.
ä
The Group list box contains the names of the different regions of the program that you can customize: desktop, menus, and dialogs. z
When you select a group from the Group list, the Item list box displays the names of the different views in that region. j
On colour and black-and-white systems, you use the Foreground and Background palettes to modify colours. l
On monochrome systems, you use the Colors set of radio buttons systems to modify the character attributes. l
On all systems, the display text (above the Cancel button) shows the current colour or attribute settings. b
Changes do not take effect on the desktop until you close the Colours dialog box by choosing OK. 
(Return to File?) Ω¡'0 File│Graphics colours▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. Ç
This function allows you to change the colours of the graphics screens. The screen contains the features of the graphics screens so one can immediately see the results of the changes. Portions of the graphics box may be enlarged by outlining them with the mouse, just as in the other graphics screens. Colours are specified by their numbers in the palette, and the palette is shown. 
(Return to File?) >£Ω±'6 File│Check aspect ratio ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
SThis module lets you adjust horizontal and vertical scales so that if the program were to draw a circle on the screen it would appear as a circle, not squashed into an ellipse. When one is viewing graphics screens one can choose whether to maintain the corect aspect ratio or to allow horizontal and vertical scales to vary independently. 
(Return to File?) Ωû'* File│Exit (Alt-X) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
┼The Exit command terminates this program and returns you to DOS. If the hull or environment was changed since the file was last saved, a warning message will allow you to save the current version. 
(Return to File?) Ωⁿ'& Change  (Alt-C) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
╖Most of the editing or work of the program is done in the "Change" and "ChangeG" menus. The first is for text screens, the second for graphics. The sub-menus of the "Change" menu are R  Units**Lines**Beam**Length**Depth
  Stems**Space points**Parameters**Identifier

(Return to Introduction?) oΦÉ ατε⌠ⁿ
%
<'  Change│Units ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. µ
One can use English or metric units in this program. In English units, all linear dimensions are stored in inches, but can be displayed as feet or inches; in metric units the data are stored in mm, and displayed in mm, cm, or m. ╤
Longitudinal and transverse dimensions can be displayed differently: for example all lengths could be displayed in feet, and all widths and depths in inches (or vice versa!). English and metric units can not be mixed, but a hull can be converted from one to the other. When one changes between feet and inches, or mm and cm, only conversion factors used in the displays are changed; when one changes between English and metric units, all dimensions are converted. ,
Weights are in pounds or kg, respectively. #
(Return to Change**Change│Lines?) Φ.
■FN'
  Change│Lines ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀
]This is the same function as File│New. Refer to the dialog box help screen for general help. Ω
This function allows you to create either a very simple ("elementary") hull with stem- and sternpieces, abutting stations, and a single centre station, or one defined by your entering tables of station coordinates from the keyboard. 0
The Tab key moves from one number to the next. S
The "hull data identifier string" is a title you can use to identify your design. e
The Units button allows you to use English or metric units, and select inches or feet, mm,cm, or m. ÷
You need to specify length, beam, and depth for the elementary hull, or the number of stations for your typing project. Length, beam, and depth are ignored if you choose "Tables", and the number of stations is ignored if you choose "Elementary" v
If a 15-foot canoe had stations a foot apart, then the number "n" to enter would be 15. The elementary hull has n=4. ┼
You need to specify the thickness of the stem- and stern-pieces that the planking is fastened to. The value used here is the full thickness of the stem or sternpiece plus both layers of planking. 
(Return to Change**File│New?) ΦU
₧ ≡■ì ò' Change│Beam ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. w
A change of beam scales all transverse horizontal directions. The beam given is the maximum beam below the sheerline. ½
If beam, length, and depth of the reference hull are rescaled, only the beam will be rescaled automatically when the reference hull is loaded as part of the environment. T
This is the same change as can be made for each staion singly in ChangeG│Stations. +
(Return to Change**Reference│Scale beam?) Φ,

╣■╫ ▀'" Change│Length ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. c
Length can be changed by changing either the number of stations or the distance between stations. Stations need not be uniformly spaced. The spacing between stations shown in this frame is the average. To change the spacing between the stations, there are two choices: change them all at once, so each one is multiplied by some factor, or change them individually. If the average spacing shown on the right side of the "Change length" dialog box is 1 foot, and you change it to 0.5 feet, and then use the "Rescale" button, all spaces between stations will be halved. If you use the "Change" button, you get another dialog box that shows the present spacings between stations, and allows you to change them individually. Note that the stem and stern pieces are butted against the nearest stations, so their spacing from their neighbours is 0, and hence is unchanged. ║
Or a new set of stations can be constructed, interpolating from the old ones. The new ones can be equally or unequally spaced. The interpolation uses four old stations in constructing each new one (cubic interpolation). For each point in the old station nearest the new one, a waterline (a horizontal section) is drawn through four old stations and the new one, and a point is inserted in the new station where that waterline intersects it. ½
If beam, length, and depth of the reference hull are rescaled, only the beam will be rescaled automatically when the reference hull is loaded as part of the environment. -
(Return to Change**Reference│Scale length?) Φ0
■-!5'  Change│Depth ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. ▐
Depth can be changed by rescaling all vertical dimensions or by adding points to or subtracting points from the stations. This function may change the sheerline: the new sheerline will not be above the new maximum depth. ½
If beam, length, and depth of the reference hull are rescaled, only the beam will be rescaled automatically when the reference hull is loaded as part of the environment. ,
(Return to Change**Reference│Scale depth?) Φ.
■∞"⌠'  Change│Stems ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. ╟
This function changes the thickness of the stem- and stern-pieces that the planking is fastened to. The value used here is the full thickness of the stem or sternpiece plus both layers of planking. 
(Return to Change?) Φ.
■*'. Change│Space points ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. %
Space points uniformly on stations. Where the station outline is nearer horizontal, the points will be uniformly spaced in x, and when nearer vertical, in y. The new points are constructed by cubic (4-point) interpolation from the old. This is essentially the same as a spline interpolation. 
(Return to Change?) Φ<
■û'* Change│Parameters ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. -
When stations shown in the ChangeG│Stations function are replaced by spline or power-law fits, these curves are approximated by a series of straight-line interpolants. The latter are constructed by first stepping along the curve, and then deleting all steps which are sufficiently close to being in a straight line with the points before and after. This function allows you to specify the lengths of those steps, and the allowable error in the straight-line interpolant. If the spacings are too small, the program may run out of memory when it does a fit. à
In the graphics screens, the boat may be shown with the bow to the left or to the right. You may choose which way in this function. ≡
In the Inspect│Displacements and Inspect│Stability functions the density of water is needed. If you're fussy, or trying to compare with some one else's calculations, you can choose between fresh and salt water, or even try something else. +
(Return to Change**interpolating spline?) Φ8

}5■'* Change│Identifier ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. Ñ
This identifying text can be a bit more informative than just a file name. It is often convenient to have some information attached to a data file to remind you which project or which version of a project it is. The hull info string gives you up to 255 characters to write such information in. The first 44 characters of this text will be displayed in most of the screens as a reminder of which file is being worked on. 2
This dialog box also shows the name of the file. ú
If the identifier of the reference hull is altered, that change can not be saved; each time the reference hull is loaded, it will have the old identifier string. /
(Return to Change**Reference│See identifier?) Φ8
■τ#∩'9 ChangeG (Alt-G)▄   : graphics screens
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Functions in this menu are f Stations**Rocker/Sheerline**Deadrise**Waterlines
 Buttocks**Diagonals**Areas/P.C.
 Block coefficient
&Graphics functions in other menus are : File│Graphics colours
 Inspect│ThreeD**Inspect│Stability
▓
The graphics screens show two windows, called the graphics and index windows or boxes. The graphics box shows all or part of the drawing (e.g., stations) that one is working on. The index box shows which portion of the whole drawing appears in the graphics box. When something less than the whole drawing is being displayed, it can be pushed partially outside the edges of the drawing so that there is more blank space at the edges. z
The mouse cursor can be moved a pixel at a time with the arrow keys, and eight pixels at a time with "Shift"+arrow keys. └
For most drawings, when the mouse cursor is in the graphics box, its coordinates in the drawing are shown on the right side of the top line. (There are no coordinates for the ThreeD screen.) 5
For most drawings, one can change the hull by dragging points (shown in a different colour) around the graphics box with the mouse: when the mouse is on a point that can be dragged, the cursor becomes heavier. (There are no such points in the "Inspect" screens.) The cursor can be moved to these points with the keyboard: "Alt"+"=" moves the cursor to the first visible draggable point, or, if it is already on a point, moves it to the next. "Alt"+"-" does the converse, moving the cursor to the last visible point or to the point preceding the one that it is on. 
Draggable points can also be moved from the keyboard: when the cursor shows that the mouse is on a point, the F7 function key moves ("nudges") the point and the mouse through an increment specified in the "nudge" box. The F8 key nudges the point in the opposite direction. Σ
One can choose whether horizontal and vertical scales are the same, or vary independently whenever one selects a subview. The ratio of horizontal and vertical is called the aspect ratio, and it can be either fixed or variable. α
One can choose also to fair the curve with a fitting spline. Most screens toggle between "drag", dragging points of the curve with the mouse, and "spline", presenting a spline fit that can be changed with the mouse by dragging its points. This fitting spline is not the same as the interpolating spline of the Stations function: the fitting spline is determined by a small number (four or more) points but the interpolating spline goes through all defined points of the station. ═
When "spline" is chosen, two other boxes allow one to add points to or delete points from the fitting spline. The "delete" box does not appear unless points have already been added to the fitting spline. s
When a graphics function is started, the whole view is shown. One can select part of this view with the mouse, as follows. Place the mouse cursor at one corner of the desired portion of the view, press and hold the left mouse button, and move the mouse cursor to the diagonally opposite corner. A box will outline the area of the new subview. When the mouse button is released, the graphics box will display the subview, and the index box will show what part of the whole view is being shown. If the box drawn is too small, the view does not change. This is too prevent accidents from pressing the mouse button inadvertently. ╡
The right mouse button cancels any action started with the left button. Thus if for example one is drawing a box to outline a subview, as in the previous paragraph, and presses the right button before releasing the left, the view will not be changed. If the right button is pressed when the left button is up, while the cursor is in either the graphics box or the index box and not on a draggable point, the view reverts to full scale. ò
When the graphics box is showing a subview, one can outline another subview within the graphics box, and this can continue until the view is so small that there is an arithmetic overflow. (This will stop the program. Save your work often!) Or, if the mouse cursor is within the index box, then i) if the cursor, shown as a hand, is in the inner box of the index box that represents the portion of the view being displayed, that box can be moved with the mouse, using the left button, or ii) if the cursor is not in that inner box, it will be shown as a cross, and a subview can be outlined as if in the graphics box. Again the right button cancels the action. 
There is also a parameter area (the upper left part of the screen); click in any of its boxes to change parameters. Or use "Tab" and "Shift"+"Tab" keys to move the mouse into this area and to move it forwards and backwards, respectively, from box to box. New values of numerical parameters are entered at the top left of the screen. When the cursor is in one of these boxes an explanatory prompt will appear at the bottom of the screen, and a slightly longer explanation can be obtained with the F1 (help) key. ╙
Some of the numerical parameters are bounded: if you give one an unreasonable value, it may appear to accept that value, but when the program recalculates, the parameter value is changed to a reasonable value. 0
Grid lines can be drawn on most views (not ThreeD). They will appear in both graphics and index boxes. Select the horizontal and vertical spacings (of the vertical and horizontal lines, respectively) in the appropriate box of the parameter area. A spacing of 0 means that no grid lines should be drawn. s
In most views (not File│Graphics colours) one can print the contents of the graphics box. See Print graphics box. K
Curves determined by a fitting function are dot-dash. Splines are dotted. å
"Impose fit" means replace the curve to be fitted by the fitting function ("drag" mode) or the interpolating spline ("spline" mode). t
Work can be saved, under the old file name (F2) or a different one (Shift+F2) wile working in the graphics screen. [
Hide/show ref: If a reference hull has been read, most graphics screens show the view of the reference hull corresponding to the specified view of the working hull. It is in a different colour. One can turn this off either by discarding the reference hull (the file still exists, so it can be read in again), or by "hiding" it with this command. ï
(Return to Introduction**Change**Inspect? Or page up to the top of this help text for a list of the functions that use graphics screens.) 
V`r|
êÆ	¥
⌐ⁿΓ∙	
h	■╛■╠╘' Print graphics box.
╓An image of the graphics box, just as it appears on the screen, may be printed on almost any printer that can print graphics. Get the graphics box to look the way you want it, and then select the "print" function. ù
When this function is called, the first screen shows the present printer choice, and allows one to change it. Then one chooses what is to be printed. B
The solid curves within the box, which are the boat lines, and, in ChangeG│Stations, the boat centre line, will be printed. One may choose to print also the outline of the box, spline curves, fitting functions, draggable points, and labels on the points. The fill patterns and colours of the ThreeD view are not printed. ╠
The size of the printed graphics box, its orientation on the page ("portrait" or "landscape") and limited header and footer text can also be chosen, as can the distance of the box below the header text. n
These selections are made through a sequence of dialog boxes, starting with the Printer selector dialog box. 
Return to graphics screens? Φ┬≡Γ
'( ChangeG│Stations ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ┘
The stations may be displayed in various ways, all with keel down. You can show only the right half stations, or the whole stations, or different half stations on left and right. You can select several stations and look at them (displayed as right-half or whole stations) one at a time or (for any display mode) all together. Once the mode of presentation has been chosen, one or two more dialog boxes select the stations: one for half-station and symmetric full station display, two for the asymmetric display with different half stations on left and right. The traditional way of displaying stations is to have all of the bow stations on the right, and all of the stern ones on the left, including the widest station on both. J
The sheer for the focussed station is shown as a horizontal dashed line. '
Some of the parameter choices follow. ¬
break: the position of the top of the graphics box, in lines from the top of the screen: decreasing this number makes the graphics box larger and the index box smaller. /
print: print the contents of the graphics box ;
fit at, dr fract:parameters for the power fit. See below. ¬
spline/power: display a spline interpolating curve or a power fit to the station curves. If the drag/spline toggle is set to spline, these curves will not be displayed. ç
impose: replace the set of station coordinates by points derived from the power fit, the interpolating spline, or the fitting spline. 
bm rocker: the maximum width, and the minimum value of y. Changing either of these rescales all x's or all y's, respectively. Changing rocker does not alter the depth. The changes are the same as the changes made to this station by the Change│Beam and ChangeG│Rocker functions. %
dr start or sl start: dr is deadrise, which in this program is taken to mean the slope of the bottom away from the keel. Altering deadrise changes y(1). dr is used for stations proper, sl for endpieces. These are the same as the changes made to each station by the ChangeG│Deadrise function. ~
If there are too many points in the station to fit in this column, one can let the list start at other than the first point. ¼
insert delete: These insert and delete points in the table in the parameter area. A newly inserted point has the same coordinates as the one that was in its place before. 7
The power fit for the stations is a simple power law, A                 y = a + b x + c x^p   (x raised to the power p)
	where y is the height above the hull keel line, x is the horizontal distance from the keel, and a, b, c, and p are constant parameters. a is the amount of rocker at that station, and b the deadrise, determined by y(1). If the "fraction of deadrise" is other than 1, then b will be multiplied by that factor -- if "fraction of deadrise" were 0.5, the power fit would go halfway between point 1 and a horizontal line through point 0. Two more points are needed to fit b and p. They are chosen in the second line, "fit at". ├
The power fit produces a flared station with an arched bottom and no tumblehome at all. One could put in tumblehome by fitting this flared curve and then changing a few points near the gunwale. ╪
It is required that height not decrease as one moves along stations; that is, y values must increase or stay constant as i increases. If there is a decrease, it will be removed when one exits from ChangeG│Stations. ≈
ChangeG│Stations, Waterlines, Buttocks, and Diagonals insert new points, using interpolation, so the results should be smoothed with ChangeG│Stations before doing anything else (including another of the latter three) that requires interpolation. ,
(Return to File│Print**Change│Parameters?) 
6Φπ≡	Y&╘┘Θ
ü
ì
¢
	⌡q
}' Selecting stations
yIn these boxes, if the radio button "Individual" is chosen, then each selection of a station selects only that station. If "Range", then each selection can select a group of stations. For example,if only the first one has been selected, selecting the last one selects all. Clicking on a selected station deselects that one, or a range, in the same way as selecting them works. /
(Return to Print patterns**ChangeG│Stations?) ⌡Ü
¬' Interpolating spline curve
;This is a tensioned cubic spline (using the algorithm of J. C. Clements, J. Ship Research 35(1991)28-31.) passing through all the points of the station. If one replaces the station with this interpolating spline, points on the station will be constructed as follows. The program will step along the curve with steps of length specified in Change│Parameters, adding a point at each step. Then it will go through all those points, deleting any that are less than a given distance, also specified in Change│Parameters, from being collinear with the points before and after. 
(Return to ChangeG│Stations?) p
d' Fitting spline
EThe fitting spline appears when one toggles from "drag" to "spline". I
This spline is specified by four points when it is created. To insert more points in it, use the insert and delete boxes in the parameter area. They appear only when the fitting spline is shown. The fitting spline must have at least four points, so the delete box appears only when the fitting spline has more than four points. 	
The points can be moved with the mouse. The end points need not coincide with the end points of the curve one is fitting to: the spline can be used to fit to a portion of the given curve, and "impose" will replace only those points within the range of the spline. '
(Return to graphics**ChangeG│Stations c   ChangeG│Rocker**ChangeG│Deadrise
   ChangeG│Waterlines**ChangeG│Buttocks
   ChangeG│Diagonals?)
┤
╛╥Γ÷
'8 ChangeG│Rocker/Sheerline ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. "
Rocker is the keel line and the sheerline is the line of the gunwales, in this instance only its height, i.e., the sheerline as seen from the side. This function displays both rocker and sheerline at the same time, and allows one to switch between working on one and working on the other. ô
When rocker is changed, then if the point being changed is in one of the end pieces, only that point is changed. If the point represents one of the intermediate stations, then all points of the station are rescaled so that the mean depth remains the same. The sheerline is not changed by a change in the rocker. This is the same change as can be made for each station individually in ChangeG│Stations. ╛
Changing trim moves stations up or down depending on their distances from the bow. Trim is specified in transverse units, and a trim of 1 means that the stern is 1 unit lower than it would be for a trim of 0, the midship station is 1/2 unit lower, etc., but then everything is shifted up or down so the lowest point on the boat is at height 0. The stem and sternpieces are moved up or down by the same amounts as the stations they butt against. P
Let's look at an example: a boat 16 feet long, with stations every foot, and no rocker. Then the lowest point on each station is at 0. Change trim to 1 inch, which is 1/16" per foot of boat length. That means the stern is pushed down one inch. Station 1 and station 0 (the stem) are both moved down 1/16". Station 2 is moved down 1/8". Station 15 and station 16 (the stern) are both moved down 15/16". The lowest point is now at station 15 and 16, and is -15/16", so everything is moved up 15/16". Stations 1 and 0 now start from 7/8", station 2 from 13/16", and stations 15 and 16 from 0". │
The fitting function for each curve is a power of the distance to the left or right of the two vertices. The dot-dash curve is the fitting curve. The profiles of the stem and sternpieces are also shown as part of the rocker. The exponents and the vertices of the fit can be changed "by hand", using the parameter box, or the program can search for a good fit (in the least-squares sense). The search can be repeated for a better fit. ╙
The fitted sheerline curve is not allowed to exceed the maximum depth. Hence with the least-squares fit, there may be a kink in the fitted curve where the latter would otherwise pass through the maximum depth. ƒ
The three-point fit (sheerline only) fits to the values at the ends and at the lowest point not at an end. It uses the powers and vertices already specified. 1
Or one can use the spline fit for either curve. P
To view the sheerline obliquely, use Inspect│ThreeD in the "wire frames" mode. F

i
¼
'( ChangeG│Deadrise ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. 3
Deadrise in general is the rise of the bottom from the keel to the bilge. I have taken the numerical value of the deadrise to be the tangent of the angle at which the bottom approaches the keel. Thus a deadrise of zero means the bottom is flat at the keel, and a deadrise of 1 means that the bottom rises at 45 degrees from the keel. In the graphics display the y value is the value of that tangent. If the bottom were a straight vee, the conventional value of the deadrise would be the horizontal distance from keel to bilge multiplied by the value given here. =
The deadrise used here is a ratio, so it has no dimensions. à
The fitting function is a sum of inverse powers of the distances from the vertices, so the vertices must be outside the area being fitted. The dot-dash line is the fitting curve. The exponents and the vertices of the fit can be changed "by hand", using the parameter box, or the program can search for a good fit (in the least-squares sense). The search can be repeated for a better fit.  
Or one can use the spline fit. ⁿ
When altering the deadrise, either the x(1) or the y(1) values in the station can be changed. This is the same change as can be made for each station individually in ChangeG│Stations, but there only y(1) can be changed by changing the deadrise value. 6
f
', ChangeG│Waterlines ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ▐
Waterlines are horizontal sections. Curve 0 is the lowest. Waterline spacing can be altered, and one can specify a maximum number of waterlines to be shown. Full waterlines can be shown, or half waterlines, just on one side of the centre. One can choose whether imposing a fit rescales all widths of each station, or only one point on each. Changing waterlines inserts new points in the stations, so after making changes one should go to ChangeG│Stations to smooth things out. T
The fitting function is a sum of two terms, A*(x-xmin)*(xmax-x)^p and B*(x-xmin)^q*(xmax-x), where "^" denotes exponentiation. It is the same as the function for the diagonals. The exponents p and q can be changed by hand, or the program can search for a good fit (in the least-squares sense). The search can be repeated for a better fit.  
Or one can use the spline fit. :

º'( ChangeG│Buttocks ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ô
Buttocks are longitudinal vertical sections. Rocker is one of the buttocks, and is more easily changed in that subprogram. Spacing can be varied. 
One can use the spline fit. ╠
Linear interpolation has been used between stations, so the buttocks are not smooth. At the ends, one can specify the number of interpolating points to use to get at least that part of the curve smooth. 
(Return to ChangeG│Stations?) 6

σ'* ChangeG│Diagonals ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ú
Diagonals are oblique sections, intersections of a plane through the centre line with the surface. In this program only diagonals through the centre line at the maximum height can be drawn, and they are spaced so that a waterline at maximum height, the diagonals, and the rocker are all uniformly spaced in angle. The number of diagonals can be varied; if two diagonals were shown, they would be at 30 and 60 degrees. u
Imposing a fit on a curve adds a point to the station. Then one should go to ChangeG│Stations to smooth things out. U
The fitting function is a sum of two terms, A*(x-xmin)*(xmax-x)^p and B*(x-xmin)^q*(xmax-x), where "^" denotes exponentiation. It is the same as the function for the waterlines. The exponents p and q can be changed by hand, or the program can search for a good fit (in the least-squares sense). The search can be repeated for a better fit.  
Or one can use the spline fit. 8
P
α', ChangeG│Areas\P.C. ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ╘
The curve of areas shows the area below the specified waterline for each station. The prismatic coefficient is shown for the entire hull and for the half hulls fore and aft of the station with the largest area. ç
The prismatic coefficient (pc) is the ratio of the immersed volume to the volume of a prism with the same length and same maximum area, so it is a number between 0 and 1. A small pc corresponds to fine ends, and gives low wave resistance at low speeds. A hull with a higher pc will have higher resistance at low speeds, but can have lower resistance at higher speeds, than the low-pc hull.  
The pc is calculated here by a simpler (and less accurate) method than in the Inspect│Displacements calculation. In both calculations it is assumed that the cross-section of the prism is that of the station with the largest area. This is usually correct, at least for canoes and kayaks. :
The pc is changed by moving the stations back and forth. ░
If the waterline is below the bottom of station 1 or n-1, the end point of the curve of areas will be shown as one of the stations, instead of the correct interpolated point. :': ChangeG│Block coefficient ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. ¼
The block coefficient is the ratio of the immersed volume of the boat to the volume of a block of the same length, beam, and draught. Thus it is a number between 0 and 1. D
Reducing block coefficient makes the hull hold course more easily. ü
The block coefficient is calculated here by a simpler (and less accurate) method than in the Inspect│Displacements calculation. 
The block coefficient is changed by changing y values, either for the whole hull, or only within a certain range. If one specifies a value for the block coefficient, then one changes either all y values or only those below the specified waterline. The change is a quadratic one, and it must not be too extreme, or the new y values could be out of order. If one requests too large a change, only the maximum allowable change will be made, but one can keep on making such changes until the block coefficient has the desired value. û
If one moves one of the points with the mouse, all points with y values between the point below it and the one above it will be shifted accordingly. Ö
Making large changes in block coefficient with this method will create ugly results. For best results, change all y values and make only small changes. H╜'& Inspect (Alt-I) ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
QThe functions in this menu do not allow changing any of the boat lines; they are $  ThreeD**Stability**Displacements.
A
Displacements uses text screens and the other two use graphics. 
(Return to Introduction?) zé	ì
Φ░╙Θ'$ Inspect│ThreeD ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. Γ
The 3-d view lets one see what the stations will look like when they are set up on the strongback. One can view from any angle, and rotate the view. Stations are drawn to the sheerline, not to the full height of the station. 
If the stations are drawn solid, they are filled with a pattern of digits -- stations 4 and 14 are filled with 4's, and so on -- and also coloured. Stem and stern pieces are shown butted against first and last stations. The wire-frame view shows the sheerline. h
If one prints the solid view, the stations are drawn as if transparent, and without the fill patterns. w
An altitude of 90 degrees means one is viewing from directly overhead and -90 means directly underneath. Azimuth is 0 if one is looking from the stern toward the bow, 180 if looking from bow to stern. This plot is only an oblique view, from whatever angle one wishes; it doesn't have the convergence of true perspective but is the view one would have from a great distance. B
If increments in altitude and azimuth are not both zero, then the program will continue to rotate the view through those increments while the "rotate" box is selected, i.e., while the mouse is in that box and a button is held down. The left mouse button rotates the view forward and the right button rotates it backward. %
(Return to Inspect**ChangeG│Rocker? 2nw'
* Inspect│Stability ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
4Refer to the graphics help screen for general help. #
Much preliminary calculation is needed before calculating stability, so there is a noticeable wait before the graphics screen appears. Quantities are tabulated for a set of angles; the angle spacing and maximum angle can be changed, but no recalculation is done until "recalc" is selected. L
While these calculations are being done, the program indicates progress. During this time, the calculation can be stopped by pressing any key (it finishes calculations for that angle first), and then curves will be shown for the angles that have been calculated. If only the zero-angle part is calculated, no curves will be shown. æ
As the boat is heeled, it is assumed to rotate about the keel line, y=0, measured from outside the skin: i.e., pitching when heeled is ignored. &
Displacement in pounds or kg and the height of the centre of gravity above the keel line can be specified. Note that an experienced paddler moves with the boat, so his or her effective c of g can be much lower than the real c of g. John Winters recommends using values of 1.1 feet (13 inches or 33 cm) for kneeling canoeists and 0.83 feet (10 inches or 25 cm ) for sitting kayakers, both measured from the bottom of the boat. If the kayak seat height is higher or lower than normal, the height of the effective c of g should be changed accordingly. ┤
The moment arm is the horizontal distance between the centre of gravity and the centre of buoyancy. The righting moment (not shown) is the product of moment arm and displacement. R
The dotted line is the draught of the boat (depth of immersion) as it is heeled. u
If for any station the last x value is not 0, the boat is assumed to be open, and it is heeled only to the gunwale. (
(Return to Inspect Change│Parameters?) 8'2 Inspect│Displacements ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
6Refer to the dialog box help screen for general help. !
This function creates a table of immersion depths, required displacement for those depths, and other quantities. It also allows access to a function that tabulates resistance vs. speed. The trim can be altered in this function, but when one exits, the trim returns to its previous value. ü
The displacement is the weight required, including the boat weight, to immerse the boat to that depth, i.e., to that waterline. 5
beam is the maximum beam at or below the waterline. %
lwl is the length at the waterline. ╚
lcb is the position of the longitudinal centre of buoyancy, from the bow. The centre of gravity of the boat and its contents should be at this distance from the bow for the boat to be trimmed level. .
hcb is the height of the centre of buoyancy. 
mch is the height of the (transverse) metacentre. As the boat heels through a small angle, the centre of buoyancy moves away from the central plane of the boat, and the metacentre is the point at which a vertical through the centre of buoyancy would intercept that central plane. }
w ar is the wetted area of the boat. The most important component of drag at low speeds is proportional to the wetted area. í
t ar is the area below the waterline as seen in profile, i.e., from the side. That is a(n incomplete) measure of the resistance of the boat to moving sideways. L
ct ar is the longitudinal centre of that area. When the boat is moving sideways, the side force can be taken to act at that point. If the point is ahead of the lcb, the boat will tend to turn more sharply once it starts to turn. If it is behind the lcb, the boat will try to turn back to running straight when you initiate a turn. ,
prsm is the prismatic coefficient, the ratio of the immersed volume of the boat to a prism of the same length and same maximum cross section. Thus it is a number between 0 and 1. Small prismatic coefficients go with fine ends and low resistance at low speeds. For faster displacement hulls, a higher prismatic coefficient gives less resistance (for fixed beam and displacement) at high speeds. The prismatic coefficient is calculated assuming that the cross-sectional area of the prism is that of the station with the maximum immersed area at that depth. *
blck is the block coefficient, the ratio of the immersed volume to a block of the same length, beam, and depth. Like the prismatic coefficient, it is a pure number between 0 and 1, and it is smaller than the prismatic coefficient. A small block coefficient goes with strong resistance to turning. `
ntry is the (half) entry angle, in radians. One radian is 180/pi degrees, or about 57 degrees. ê

reformat: change the appearance of this table: the number of decimal places and the number of columns for each quantity in the table. ,
resistance: tabulate resistance vs. speed. Q
recalculate: change depth intervals, skin thickness, trim, etc. and start over. 
cancel:return to main menu. )
(Return to Inspect**Change│Parameters?) Φ@
2
┬╦'' Reformat table of displacements, etc.
ßYou can change the width allowed for each item in the tabulation, and the number of decimal points, and you can see immediately the effect of the change. Remember to allow enough width for at least one space between columns. J
Setting width equal to 0 means that item is not shown in the tabulation. 
If the width is not 0, then it must be at least 2, if the number of decimals is 0, or at least 3 plus the number of decimals, if the latter is not 0. If you enter an illegal value, it will be automatically changed to a legal one. Thus if an entry has a width of 6, with two decimal places, and you want to change it to a width of 3, with no decimal places, you would have to change the number of decimal places before changing the width. Conversely, if you want to increase both width and decimal places, you must change width first. $
(Return to Inspect│Displacements?) v' Resistance vs. speed
ºThis function tabulates boat resistance vs. speed using simple semi-empirical formulae. The total resistance is frictional resistance + residual resistance, or Rf+Rr. e
I am pleased to thank John Winters for freely making available his formula for residual resistance. h
The usual formula for frictional resistance, quoted in Sea Kayaker, Spring 1994, p 42, for example, is 4  Rf (lb) = [0.00871+0.053/(8.8+L)]*S*V^1.825 +0.04
╒where L = waterline length in feet, V = speed in knots, and S = wetted area in sq. ft. The "^" sign indicates exponentiation, i.e., x^2 means x squared. In fact this is an approximation to a more general formula, &  Rf (lb) = 0.075*S*v^2/[log(Re)-2]^2
Zwhere v (distinct from V) is speed in feet/sec, v=V*1.688, and Re is the Reynolds number,   Re = v*L*10^5/1.23.
0This more general formula is the one used here. U
Spilman's residual resistance is also quoted on the same page of Sea Kayaker. It is =  Rr (lb) = 21.541*u^4-58.373*u^3+59.1224*u^2-25.828*u+4.126
åwhere u = V/sqrt(L). This formula was derived from some tank testing done by Sea Kayaker in 1986. Because it takes no account of the shape of the boat, it should not be taken too seriously: it can at best be no more than a guide. Note that the value at u=0 is huge, Rr=4.126, whereas in fact Rr=0 at u=0. Thus Spilman's formula should not be used below the speed at which it has a minimum. T
Taylor's residual resistance was derived from decades of US Navy tank tests. It is E  Rr (lb) = (12.5*block*disp/L^2 + 0.1*beam/L +0.001*draft/beam)*V^4
íwhere block = block coefficient, disp is displacement in long tons, i.e., loaded weight in pounds divided by 2240, beam is waterline beam in feet, and draft is immersion depth in feet. This formula takes more account of the shape of the boat, but oversimplifies the speed dependence of resistance. Also, the tests it was derived from may not have used canoe-shaped hulls. Again, it should not be taken too seriously. ₧
John Winters' formula was obtained by fitting the results of the Sea Kayaker tests, and it tries to take account of both boat shape and speed changes. It is ├  Rr (lb) = (4 * (0.5/RLCB)^0.35 * disp /L^2 * V^4
                          + 0.005 * (beam/L) * V^4
                        + 0.005 * sin(entry) * V^2)
           * F * (0.92 + 0.48*cos(V+0.2)
┼where RLCB (relative LCB) is the position of the centre of buoyancy, divided by the length, entry is the entry half angle and F is a tabulated factor. The F factor is derived from many of Taylor's graphs in a way which I do not fully understand (and I don't have the graphs to try to reproduce it), so I have replaced it in a simplified form by interpolation from a table of values. The factor ranges from 1 to about 1.6, so this is not likely to cause significant error. Winters' cosine factor is as given above, but I have instead used 4*u+0.2 for the cosine argument instead of V+0.2. The two agree for a length of 16 feet, and the factor should be a function of speed-length ratio rather than just speed. 
Winters' fitting was taken far enough to find that there were errors in the Sea Kayaker tests. Until those errors are found and corrected, this formula is probably the best estimate one can make for hull shapes that would be "reasonable" for canoes and kayaks. ∞
Winters suggests using an "effective length" in the residual resistance formulas, and in fact he used such an effective length in obtaining his formula. This effective length is usually derived either from the curve of areas or from a sum of the curve of areas and the waterplane, i.e. the curve of the loaded waterline. If there is a tail on this curve at the ends, some of the tail is cut off to obtain an effective length that is usually shorter (sometimes much shorter) than the "real" waterline length. The argument is that very slender ends don't really affect the residual resistance of the boat. The usual method for truncating the tail is by drawing a line from the maximum of the curve down to the end so that it is tangent to the curve of areas (it touches the curve, but doesn't cut it). I have not tried to evaluate the effective length in this program, but have allowed you to enter one if desired. I hope to soon modify the ChangeG│Areas function to ease evaluation of effective lengths. s
Frictional resistance is tabulated separately. and the "Spilman" and "Taylor" columns include frictional resistance. One may tabulate resistances for given displacement or immersion depth, for any of several velocity units, and for a given increment in velocity. sp-lng is the so-called speed-length ratio, the quantity u=V/sqrt(L) given above. The Froude number is a dimensionless number obtained from u. It is usually u^2/g, where g is the acceleration due to gravity. In English units g is 32.17 ft/sec^2. However I have used the square root of the usual Froude number in order to have a quantity proportional to velocity. a
Displacement and immersion depth can not exceed the maximum values calculated in Displacements. 
To change the tabulation, change the parameters on the left. The conversion factors to the right of the speed-units selector show the conversion from the current units. For example, if the current units is knots, the conversion factor for miles/hr is 1.15: one knot = 1.15 mph. ì
If you change the effective length, it stays changed until you change either draft or displacement, when it turns back to waterline length. U
The draft will be the default value the next time the curve of areas is calculated. l
Selecting "Continue" returns one to the Displacements function, and "Cancel" returns one to the main menu. ║
' Reference▄
  ▀▀▀▀▀▀▀▀▀
äOne can display corresponding views of a "reference" hull along with most of the views of the hull one is working with. The reference hull may be the same as the working one, in which case the views will be those of the hull when one first loaded it. It may be rescaled, but changes in it can not be saved. To change the reference hull permanently, load it as a working hull, make the changes, and save. Then reload it as the reference hull. If one does not want to see the reference hull with the working hull, it may be disposed of, so it no longer takes up room in memory, or it may be hidden, so it can reappear immediately if one chooses. ó
The choice of reference hull is saved as part of the environment, so that when one reloads the working hull, the same reference hull, or none at all, is loaded. t
If one tries to alter the reference hull when none is loaded, a warning message appears to remind you to load one. 
The sub-menu functions are w  Read**Discard**Copy from hull
  copy to hull
  Scale beam**Scale length**Scale depth
  See identifier**Displacements
	╤╫α± 
!"#($8
'" Reference│Read▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀
■This is just like the File│Read function. It displays a File dialog box within which you select the data file you want to read. If one is already loaded, the new one will replace it. No changes to the reference hull can be saved, so no warning is given. 
(Return to Reference?) δ9	∞[-	'6 Reference│Copy from hull▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
ÑMake the reference hull a copy of the current design hull, which is not necessarily the one saved in the file with the same name as that of the current design hull. 
(Return to Reference?) Φ	'2 Reference│Copy to Hull▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
=Make the design hull the same as the current reference hull. 
(Return to Reference?) |	'( Reference│Discard▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
=Discards the reference file and releases the memory it used. 
(Return to Reference?) r	'. Reference│Scale beam▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
■This is the same as the Change│Beam function, but it operates on the reference hull. If the beam of the reference hull is altered, it will be rescaled automatically whenever the design hull is reloaded with that reference hull a part of the environment. 
(Return to Reference?) G9	'2 Reference│Scale Length▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
WThis is the same as the Change│Length function, but it operates on the reference hull. 
(Return to Reference?) K
û	'0 Reference│Scale Depth▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
VThis is the same as the Change│Depth function, but it operates on the reference hull. 
(Return to Reference?) Iô	'6 Reference│See identifier▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
[This is the same as the Change│Identifier function, but it operates on the reference hull. 
(Return to Reference?) O₧	'6 Reference│Displacements ▄
  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
═This is the same as the Inspect│Displacements function, but it operates on the reference hull. There is not room to display the displacements tabulations for reference and working hull on the same screen. 
(Return to Reference?) O	'

 File backup
░Creating a new file with the same name as an old one destroys the old file. If a file already exists with the name that will be used for the new file, this dialog box appears. ╝
To change the name of the new file, select "Cancel", then repeat the steps by which the file name was chosen. If one used File│Save (F2) from the main menu then use File│Save as instead. ó
Otherwise, the old file may be overwritten, or its name changed, or, if appropriate, the new data may be written at the end of the old file by selecting the Append button. The new file name proposed for the old file is chosen by extending the old file name to eight characters by adding 0s, if necessary, and then incrementing the extended file name until an unused file name is found. For example, if the old file is called OLDFILE.DTA, the extended file name would be OLDFILE0.DTA. If a file with that name already existed, the name OLDFILE1.DTA would be tried. If all those choices through OLDFILE9.DTA already existed, the next choice would be OLDFIL00.DTA, and so on. ╔
If you change the selected backup file name, then you must be sure the name you have chosen is not that of an existing file, for if such a file already exists, it will be overwritten without warning. 8
To save the old file with a new name, select "Backup". =
To save the new data and discard the old, select "Replace". D
To write the new data on the end of the old file, select "Append". $
(Return to File│Save**File│Save As   File Dialog Box?)
 d ¬	 ╡∞─' Skin
ßThe lines one views in the program are those of the finished boat. Patterns will usually be for stations which define the inside of the skin of the boat. This function subtracts the skin thickness from the designed stations. Ç
If you choose a thickness of 0, the calculation is faster, so in preliminary work one may prefer to ignore the skin thickness.  
(Return to File│Print patterns   File│Print tables of lines?)
⌡t≈è'ΦChange station spacings Change some or all of the spacings between stations; the stations do not have to be uniformly spaced. Note that stem and sternpieces are butted against the nearest stations, so those spacings are fixed at 0. '
 Station coordinates
┴These are the points defining the station, given in the selected transverse units. The x value is the horizontal distance from the centre line and the y value the distance above the keel line. '

 Grid lines
╓If the variable here is greater than 0, vertical lines are drawn uniformly spaced across the graphics box. For example, if the x units are feet and the variable is 1, then there will be lines at 0 feet, 1 foot,... '

 Grid lines
▄If the variable here is greater than 0, horizontal lines are drawn uniformly spaced across the graphics box. For example, if the y units are inches and the variable is 1, then there will be lines at 0 inches, 1 inch,... '
 Change beam
¼Change the maximum width of this station. This makes the station uniformly wider or narrower by rescaling all x's. This is the same modification as is made by Change│Beam. «'
 Change rocker
≡This is the height (y value) of the bottom of this station above the keel line. Changing this variable uniformly stretches or shrinks this station with the depth staying the same. This is the same modification as is made by ChangeG│Rocker. ±'
 Start of list
ùIf the number of points is too large for all to be listed on the screen, changing this variable allows the display of the list to start part way down. '
 Make a new point
┴When this function is called, it asks for the number of one of the existing points, and inserts a new point just after that one, with the same x and y values. Then these values can be changed. ~
If you call this by accident, specifying a number less than 0 or greater than the present number of points cancels the call. '
 Delete a point
lWhen this function is called, it asks for the number of one of the existing points, and deletes that point. ~
If you call this by accident, specifying a number less than 0 or greater than the present number of points cancels the call. '
 Deadrise
└This is the slope of the bottom away from the keel. Changing it moves point number one up or down without altering anything else. This is the same modification as is made by ChangeG│Deadrise. ║'
 Stem or stern slope at base
»This is the slope of the stem or stern at the point where it butts against the adjacent station. Changing it moves point number one up or down without altering anything else. '
 Fitting exponent
┌The analytical fitting function uses a variable power of the distance from a specified point to draw a smooth curve near the appropriate curve of your design. This parameter is the value of one of the variable powers. '
 Fitting exponent
┌The analytical fitting function uses a variable power of the distance from a specified point to draw a smooth curve near the appropriate curve of your design. This parameter is the value of one of the variable powers. '
 Waterline spacing
LThis is the vertical distance between waterlines, starting from the bottom. '
 Waterline choice
XThe 0th waterline is at the specified (by waterline spacing) height above the keelline. '
 Least-squares fit
This function systematically varies the parameters of the fitting function, i.e., the powers and distances, to find a fitting curve that is the closest, in the sense that the sum of the squares of the errors at the marked points of the focussed curve, to the focussed curve. '
 Drag points or edit spline
*One can choose to fair the curve with a fitting spline, toggling between "drag", dragging points of the curve with the mouse, and "spline", presenting a spline fit that can be changed with the mouse by dragging its points. This fitting spline is determined by a small number (four or more) points. ═
When "spline" is chosen, two other boxes allow one to add points to or delete points from the fitting spline. The "delete" box does not appear unless points have already been added to the fitting spline. 
N'
 Replace curve
p"Impose fit" now means to replace the curve to be fitted by the fitting function, not the interpolating spline. '
 Redraw figure
^Redraw the whole screen, recalculating as necessary to use any changed values from this menu. '
 Fitting points
πThe analytical fitting function uses a variable power of the distance from a specified point to draw a smooth curve near the appropriate curve of your design. This parameter gives the location of one of the specifiable points. '
 Fitting points
πThe analytical fitting function uses a variable power of the distance from a specified point to draw a smooth curve near the appropriate curve of your design. This parameter gives the location of one of the specifiable points. '
 Alter x or y values
The deadrise is changed if either the x or the y value of the first (not zeroth) point of a station changes, so conversely a change in any point of the deadrise can alter either an x or a y value in a station. This function allows you to choose which you alter. '
 Replace curve
6The focussed curve is replaced with the spline curve. '	
Circles '	
Circles '
 Azimuth increment
-The azimuth is the angle in a horizontal circle and the altitude is the angle above the horizontal. An altitude of 90 degrees means one is viewing from directly overhead and -90 means directly underneath. Azimuth is 0 if one is looking from the stern toward the bow, 180 if looking from bow to stern. B
If increments in altitude and azimuth are not both zero, then the program will continue to rotate the view through those increments while the "rotate" box is selected, i.e., while the mouse is in that box and a button is held down. The left mouse button rotates the view forward and the right button rotates it backward. '<
Circles put(i,'height of centre of stern circle'); inc(i); '
 Drag points or edit spline
╢One can choose to fair the curve with a fitting spline, toggling between "drag", dragging points of the curve with the mouse, and "spline", presenting a spline fit that can be changed with the mouse by dragging its points. This fitting spline is not the same as the interpolating spline: the fitting spline is determined by a small number (four or more) points but the interpolating spline goes through all defined points of the station. ═
When "spline" is chosen, two other boxes allow one to add points to or delete points from the fitting spline. The "delete" box does not appear unless points have already been added to the fitting spline. 
N'
 Deadrise fraction
#This specifies the slope of the power-law curve at the centre line, compared with the slope of the present curve. A fraction of 1 means the two have the same slope, and a fraction of 0.5 means that the power-law curve is flatter at the bottom, having half the deadrise of the present curve. '
 Counting
0The zeroth curve is closest to the centre line. '
 Drag points or edit spline
*One can choose to fair the curve with a fitting spline, toggling between "drag", dragging points of the curve with the mouse, and "spline", presenting a spline fit that can be changed with the mouse by dragging its points. This fitting spline is determined by a small number (four or more) points. ═
When "spline" is chosen, two other boxes allow one to add points to or delete points from the fitting spline. The "delete" box does not appear unless points have already been added to the fitting spline. 
N'
 Buttock spacing
RThe buttocks are vertical sections, and this specifies the distance between them. '
 Fitting points
úThe power-law fit uses the first two points on the curve plus two other points to make the fit. This is one of the other points, the one with the greater y value. 
See power law fit. ║
'
 Fitting points
óThe power-law fit uses the first two points on the curve plus two other points to make the fit. This is one of the other points, the one with the lesser y value. 
See power law fit. ╣
'
 Counting
^The zeroth curve is the section most nearly horizontal, and the last is most nearly vertical. '
 Altitude increment
-The azimuth is the angle in a horizontal circle and the altitude is the angle above the horizontal. An altitude of 90 degrees means one is viewing from directly overhead and -90 means directly underneath. Azimuth is 0 if one is looking from the stern toward the bow, 180 if looking from bow to stern. B
If increments in altitude and azimuth are not both zero, then the program will continue to rotate the view through those increments while the "rotate" box is selected, i.e., while the mouse is in that box and a button is held down. The left mouse button rotates the view forward and the right button rotates it backward. '
 Diagonal spacing
gIf there is only one diagonal it will be at 45 degrees, if two they will be at 30 and 60 degrees, etc. '
 Keel up or gunwale up?
"Which way up is the figure drawn? '
 Solid or wire?
The "solid" view is of the station frames, as if they were set up on the strongback. The frames are filled with a pattern of digits -- stations 4 and 14 are filled with 4's, and so on -- and also coloured. Stem and stern pieces are shown butted against first and last stations. ╗
The "wire" view has just the outlines of the frames, as if they were made of wire, but with no line from gunwale to gunwale. The sheerline (line of gunwales) and keel line are drawn in. ì
If one prints the figure, the frames in the "solid" view will be transparent, and the patterns of digits on the frames will not be printed. '
 Altitude
┌The azimuth is the angle in a horizontal circle and the altitude is the angle above the horizontal. An altitude of 90 degrees means one is viewing from directly overhead and -90 means directly underneath. Azimuth is 0 if one is looking from the stern toward the bow, 180 if looking from bow to stern. This plot is only an oblique view, from whatever angle one wishes; it doesn't have the convergence of true perspective but is the view one would have from a great distance. '

 Azimuth
┌The azimuth is the angle in a horizontal circle and the altitude is the angle above the horizontal. An altitude of 90 degrees means one is viewing from directly overhead and -90 means directly underneath. Azimuth is 0 if one is looking from the stern toward the bow, 180 if looking from bow to stern. This plot is only an oblique view, from whatever angle one wishes; it doesn't have the convergence of true perspective but is the view one would have from a great distance. '
horizontal dimension of box '
vertical dimension of box '	
 Rotate
AIf increments in altitude and azimuth are not both zero, then the program will continue to rotate the view through those increments while the "rotate" box is selected, i.e., while the mouse is in that box and a button is held down. The left mouse button rotates the view forward and the right button rotates it backward. '

 Background
CAll the clear space outside the menu, graphics box, and index box. '
 Text colour
!All text will be in this colour, '
 Status line
@The left-hand side of the line across the bottom of the screen. '
 Prompt area
~The right-hand side of the bottom line of the screen, where the prompts are shown when the mouse is in one of the menu boxes. ' Graphics menu box
YThe normal colour of the sub-boxes of the graphics menu, when the cursor is not in them. ' Focussed graphics-menu box
⌐When the mouse cursor is in one of the subboxes of the graphics menu, that box changes to this colour to show that it is the one that will be selected by a mouse click. ' Graphics box
,The large box that the curves are drawn in. ' Index box
«The small box that the curves are drawn in. It contains the inner box, the rectangle within it that shows what portion of the picture is being displayed in the graphics box. ' Inner box
rThe rectangle inside the index box that shows what portion of the picture is being displayed in the graphics box. ' Grid lines
9The regular lines that may be drawn in the graphics box. ' Grid lines
6The regular lines that may be drawn in the index box. ' Grid numbers
This has been disabled '	 Borders
The outlines of the boxes. ' Solid curves
"These are used for hull sections. ' Dotted curves
+Spline curves are drawn with dotted lines. ' Centre lines
6These are used to show the central plane of the boat. ' Dashed curves
2These are used for the analytical fitting curves. ' Points
`These are points on the curve that correspond to hull data. They can be dragged with the mouse. ' Fitting text
╧When one does a least-squares fit, the values of the parameters and the error in the fit are shown. This is the colour the numbers are printed in. It doesn't work if you try to set this colour to 0 (black). ' Fitting background
¬When one does a least-squares fit, the values of the parameters and the error in the fit are shown. This is the colour of the background that the numbers are printed on. ' Reference curve
êThe reference hull is one that can be shown for comparison with the one that you are working on. Its sections are shown in this colour. '*
 Delete one of the points of the spline.
'
 Waterline
UThe area shown is the cros-sectional area of each station below the given waterline. '
 Interpolating points
¢If you use a small number of points the curves will be jagged, and with a large number they will be smooth, but it will take longer to calculate and draw. '
 Spline or power-law?
SWhich fitting curve should be displayed? It is too confusing to show both at once. 7
The power fit for the stations is a simple power law, A                 y = a + b x + c x^p   (x raised to the power p)
	where y is the height above the hull keel line, x is the horizontal distance from the keel, and a, b, c, and p are constant parameters. a is the amount of rocker at that station, and b the deadrise, determined by y(1). If the "fraction of deadrise" is other than 1, then b will be multiplied by that factor -- if "fraction of deadrise" were 0.5, the power fit would go halfway between point 1 and a horizontal line through point 0. Two more points are needed to fit b and p. They are chosen in the second line, "fit at". ├
The power fit produces a flared station with an arched bottom and no tumblehome at all. One could put in tumblehome by fitting this flared curve and then changing a few points near the gunwale. ,
See the nearer and farther fitting points. P
The interpolating spline is a tensioned cubic spline (using the algorithm of J. C. Clements, J. Ship Research 35(1991)28-31.) passing through all the points of the station. If one replaces the station with this interpolating spline, points on the station will be constructed as follows. The program will step along the curve with steps of length specified in Change│Parameters, adding a point at each step. Then it will go through all those points, deleting any that are less than a given distance, also specified in Change│Parameters, from being collinear with the points before and after. ≡╕∩├C'
 Replace curve
6The focussed curve is replaced with the spline curve. '
 Box size
σThe graphics box can be enlarged somewhat at the expense of the index box. This specifies the number of graphics lines down from the top of the screen to the top of the graphics box. The full screen height is normally 480 lines. '
 Stability angles
0Calculate stability at multiples of this angle. '
 Stability angles
ÜCalculate stability up to this angle. If for any station the last x value is not 0, the boat is assumed to be open, and it is heeled only to the gunwale. '
 Displacement
╞This determines the depth of immersion of the boat. It is the weight of the boat and everything in it. If one is working in English units, it is in pounds; if working in metric, it is in kilograms. '
 Height of centre of gravity
If the weight of the boat and its contents were balanced at one point, what would be the height of that point? A paddler usually moves in response to boat motions, so the effective height of the paddler's centre of gravity is usually lower than it would be if the paddler were rigid. >
John Winters recommends using values of 1.1 feet (13 inches or 33 cm) for kneeling canoeists and 0.83 feet (10 inches or 25 cm ) for sitting kayakers, both measured from the bottom of the boat. If the kayak seat height is higher or lower than normal, the height of the effective c of g should be changed accordingly. '
 Recalculate
DRecalculating stability takes too long to do until it is asked for. ' Trim
Bput(i,'trim, transverse units; positive for stern down'); inc(i); '
 Waterplane area
óThe waterplane area is the area of the figure enclosed by the specified waterline. This gives the position of the centre of that area, measured aft from the bow. '
 Print
òParts of what is shown in the graphics box, along with some text, can be printed. Arrange the figure the way you want it, then select this function. 
See Print graphics box. 	ú'
 Least-squares or 3-point fit
±A least-squares fit tries to fit all of the points on the curve, and the three-point fit has the correct end values and minimum value. If you already had a pleasing sheerline and decided to move it, the three-point fit is definitely easier. '
 Rescale or alter?
öWhen one imposes a fit to a waterline, one can choose to change just that waterline or to change all waterlines in the same way by the same factor. ' Which curve?
RThe one nearest the keel is the 0th, and the numbers increase toward the gunwale. '
 Prismatic coefficient
íThe p.c. is the ratio of the volume of the immersed part of the hull to that of a prism with the same cross-section as the largest station, and the same length. '
 Bow prismatic coefficient
²The p.c. is the ratio of the volume of the immersed part of the hull to that of a prism with the same cross-section as the largest station, and the same length. The bow p.c. is the corresponding ratio for only the part from the largest station forward. '
 Stern prismatic coefficient
√The p.c. is the ratio of the volume of the immersed part of the hull to that of a prism with the same cross-section as the largest station, and the same length. The stern p.c. is the corresponding ratio for only the part from the largest station aft. '
 Waterline
VThe block coefficient is calculated for the portion of the hull below this waterline. 'ltotal/depth/to waterline not in use Alter b.c. over the whole depth, or only below the specified waterline? '
 Block coefficient
The block coefficient is the ratio of the immersed volume of the hull to a block having the same length, beam, and depth. This number is the b.c. calculated up to the waterline specified. Changing this number will alter the heights of all points below this waterline. '
 Add spline point
'&
 Hide or display reference sections?
KIf a reference hull has been read, most graphics screens show the view of the reference hull corresponding to the specified view of the working hull. It is in a different colour. One can turn this off either by discarding the reference hull (the file still exists, so it can be read in again), or by "hiding" it with this command. '
 Nudge
>Draggable points can be moved from the keyboard: when the cursor shows that the mouse is on a point (the cross-hairs of the mouse pointer are heavy), the F7 function key moves ("nudges") the point and the mouse through an increment specified in this "nudge" box. The F8 key nudges the point in the opposite direction. =
This number is the amount the point will move horizontally. h
The cursor can be moved among the draggable points in the view  with the "Alt"+"=" and "Alt"+"-" keys. '
 Nudge
>Draggable points can be moved from the keyboard: when the cursor shows that the mouse is on a point (the cross-hairs of the mouse pointer are heavy), the F7 function key moves ("nudges") the point and the mouse through an increment specified in this "nudge" box. The F8 key nudges the point in the opposite direction. ;
This number is the amount the point will move vertically. h
The cursor can be moved among the draggable points in the view  with the "Alt"+"=" and "Alt"+"-" keys. '
 Nudge
>Draggable points can be moved from the keyboard: when the cursor shows that the mouse is on a point (the cross-hairs of the mouse pointer are heavy), the F7 function key moves ("nudges") the point and the mouse through an increment specified in this "nudge" box. The F8 key nudges the point in the opposite direction. =
This number is the amount the point will move horizontally. h
The cursor can be moved among the draggable points in the view  with the "Alt"+"=" and "Alt"+"-" keys. '
 Nudge
>Draggable points can be moved from the keyboard: when the cursor shows that the mouse is on a point (the cross-hairs of the mouse pointer are heavy), the F7 function key moves ("nudges") the point and the mouse through an increment specified in this "nudge" box. The F8 key nudges the point in the opposite direction. ;
This number is the amount the point will move vertically. h
The cursor can be moved among the draggable points in the view  with the "Alt"+"=" and "Alt"+"-" keys. '
 Nudge
>Draggable points can be moved from the keyboard: when the cursor shows that the mouse is on a point (the cross-hairs of the mouse pointer are heavy), the F7 function key moves ("nudges") the point and the mouse through an increment specified in this "nudge" box. The F8 key nudges the point in the opposite direction. ;
This number is the amount the point will move vertically. h
The cursor can be moved among the draggable points in the view  with the "Alt"+"=" and "Alt"+"-" keys. '#
 Aspect ratio: fixed or variable?
HThe ratio of horizontal and vertical scales is called the aspect ratio. R
If the aspect ratio is fixed, the ratio of the horizontal and vertical dimensions will be held constant. If the horizontal and vertical dimensions can be measured in the same units (they are both lengths, instead of the vertical dimension being a number or an area, for example) then the horizontal and vertical scales will be the same. '
 Number of waterlines drawn
«For example, if the specified waterline spacing is 1 inch, the boat depth is 16", and this number is five, waterlines will be drawn at 1, 2, 3, 4, and 5" above the keelline. '
 Max depth or sheerline
\The stations may be extrapolated to the maximum depth value rather than being cut off at the sheerline. If max. depth is chosen, then the position of the sheerline is ignored in drawing the waterlines. If sheerline is chosen, then any part of any "waterline" that is above the sheerline will be replaced by the corresponding part of the sheerline. '
 Full or half waterlines
=Draw waterlines both sides of the keel, or just on one side. '
 Rocker or sheerline
.Work with either the rocker or the sheerline. '
 Change trim
JMoves stations up or down depending on their distances from the bow. Trim is specified in transverse units, and a trim of 1 means that the stern is 1 unit lower than it would be for a trim of 0, the midship station is 1/2 unit lower, etc., but then everything is shifted up or down so the lowest point on the boat is at height 0. ▓
Note that this is only an approximation (but a good one) to what really happens when you change trim: the stations rotate as well as shifting, and the rotation is ignored here. '¬┤ΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ 	

 !"#$%&'╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ 	

 !"#$%&'()*+,-./0123                         bH$╣'A/╓0╜2%46£=>DÖVh[.^╩aεgMl¬p╤r╧s╨t»y╟{ì~%Ç¿âäêÑèæHôûöPû│Üπ¥└╖╝╦≡╠╧δ╥√▌ÆπhτåΘÿφé≥╩≈⌠°º■5▄4,╛023╢3G4ñ5^67╫79?▌@╬A▒BáCòD`EqF$GàHÅIkJDK=L6MóMNLOtQRzRzSzTóU⌠UVV¬X∩Xú[µ\-]U_┼_í`|a±aäd
eQe╥g├i│k┘k²kSm»mΘmBn┘nQo"php-q╢qrUrår╢r≥r8sês╒sIt2uⁿuív╘vAw wV~¿~ñ≤¼Çìüärä╞äåàPålç êîêQëvè¢ï	î~î¬ì╞ìCÅ@æ;ô8ò3ù.Ö·Ü╤¢R¥╡¥₧╫6à*}-29w}                                        